Automatic Verification of Complex Security Protocols With an Unbounded Number of Sessions
نویسندگان
چکیده
We present a new protocol logic, called Logic of Local Sessions (LLS), which is based on a quite natural semantic model called Instantiation Space. Given a protocol and a log file for a principal’s message data flow, which is formalized in Cryptographical Message Exchange model (CME), the notion of Instantiation Space is used to identify all the protocol’s local runs carried out by the principal. LLS is implemented and resulted in a robust Security Protocol Verifier (SPV), which is particularly suitable for automatic verification of complex protocols with an unbounded number of sessions. Due to the flexibility of LLS, the current version of SPV can deal with complex message formats with arbitrarily nested encryptions by public, private, shared and hash keys as well as freshly generated keys. Also, SPV can be used to verify complex security properties such as “Alice observes (knows) Bob observes (knows) Alice said something”. Most importantly, it has been applied to automatically verify a lot of interesting and important properties for quite complex security protocols like Kerberos V5 and the SET purchase phase protocol.
منابع مشابه
Dynamic Tags for Security Protocols
The design and verification of cryptographic protocols is a notoriously difficulttask, even in symbolic models which take an abstract view of cryptography. This is mainlydue to the fact that protocols may interact with an arbitrary attacker which yields averification problem that has several sources of unboundedness (size of messages, numberof sessions, etc.).In this paper, ...
متن کاملVerification of Security Protocols with Lists: From Length One to Unbounded Length
We present a novel, simple technique for proving secrecy properties for security protocols that manipulate lists of unbounded length, for an unbounded number of sessions. More specifically, our technique relies on the Horn clause approach used in the automatic verifier ProVerif: we show that if a protocol is proven secure by our technique with lists of length one, then it is secure for lists of...
متن کاملTAuth: Verifying Timed Security Protocols
Quantitative timing is often relevant to the security of systems, like web applications, cyber-physical systems, etc. Verifying timed security protocols is however challenging as both arbitrary attacking behaviors and quantitative timing may lead to undecidability. In this work, we develop a service framework to support intuitive modeling of the timed protocol, as well as automatic verification...
متن کاملUsing Horn Clauses for Analyzing Security Protocols
This chapter presents a method for verifying security protocols based on an abstract representation of protocols by Horn clauses. This method is the foundation of the protocol verifier ProVerif. It is fully automatic, efficient, and can handle an unbounded number of sessions and an unbounded message space. It supports various cryptographic primitives defined by rewrite rules or equations. Even ...
متن کاملAutomatic Analysis of the Security of XOR-Based Key Management Schemes
We describe a new algorithm for analysing security protocols that use XOR, such as key-management APIs. As a case study, we consider the IBM 4758 CCA API, which is widely used in the ATM (cash machine) network. Earlier versions of the CCA API were shown to have serious flaws, and the fixes introduced by IBM in version 2.41 had not previously been formally analysed. We first investigate IBM’s pr...
متن کامل